package com.nanyang.tms.api.dto.request.bill;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.nanyang.common.core.domain.ApiRequest;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Pattern;
import java.math.BigDecimal;
import java.util.Date;

@Data
public class BillAddRequest extends ApiRequest {

    @JsonIgnore
    private String pin;


    /**
     * 账单名称
     */
    @NotEmpty(message = "账单名称不能为空")
    @Length(max = 50, message = "billName长度需小于50个字符")
    private String billName;

    /**
     * 服务商编码
     */
    @NotEmpty(message = "服务商编码不能为空")
    @Length(max = 32, message = "supplierCode长度需小于32个字符")
    private String supplierCode;

    /**
     * 服务商名称
     */
    @NotEmpty(message = "服务商名称不能为空")
    @Length(max = 50, message = "supplierName长度需小于50个字符")
    private String supplierName;

    /**
     * 服务商产品编码
     */
    @NotEmpty(message = "服务商产品编码不能为空")
    @Length(max = 32, message = "productCode长度需小于32个字符")
    private String productCode;

    /**
     * 服务商产品名称
     */
    @NotEmpty(message = "服务商产品名称不能为空")
    @Length(max = 50, message = "productName长度需小于50个字符")
    private String productName;

    /**
     * 账单日期
     */
    @NotEmpty(message = "账单日期不能为空")
    @Length(max = 50, message = "billDate长度需小于50字符")
    private String billDate;

    /**
     * 账单文件
     */
    @NotEmpty(message = "账单文件不能为空")
    @Length(max = 500, message = "billUrl长度需小于500个字符")
    private String billUrl;



    @Override
    public void requestCheck() {

    }
}
